Remote access to resources on a computer system is becoming increasingly more important as personal digital assistants (PDA) and other portable electronic devices such as laptop computer systems gain popularity. The remote shared resources include, for example, databases, documents, applications, stored procedures, processes, routines, files, physical and virtual devices, memory, and other addressable or accessible information on a computer system.
Traditionally, remote access was implemented over hardwire network connections using Ethernet or Token Ring protocols. Recently, wireless communications channels are used to supplement or replace the hardwire connections. These wireless communications channels may use infrared and radiofrequency (RF) signals.
The wireless connection model has been extended to the PDAs and other portable electronic devices to enable connection from the PDA to a remote resource (remote in the sense it is not located on the same physical device, though it may be a central or shared resource as described above).
The drawbacks to the use of a wireless connection model for accessing a shared remote resource by a remote device can include: 1) unreliable connections, 2) expensive connections, 3) insecure connections, and 4) complicated connections.
The connections may be unreliable because of various well-known deficiencies in wireless connection systems, including adequate power and proximity of receivers and transmitters in appropriate relationship to each other. This drawback is further complicated because the PDA location relative to an active and accessible transceiver may be changing between connections or even during a connection. An access to a resource may be possible at one instant, but may be inaccessible soon thereafter. If a resource is inaccessible, a user or application of the PDA cannot necessarily know when a connection will be possible, or become possible again. This can cause anomalous behavior with applications not properly designed for this contingency, as well as increase user frustration when trying to access a shared resource that is intermittently available.
The connections may be expensive because many wireless service providers will charge a user based upon the number of connections initiated and the length of each connection. As some service providers charge the user a minimum amount for any connection no matter how short, frequent connections that use very little time can result in a very high charge that is not related to the actual amount of time the connection was used. Therefore this connection model results in a usage fee that is unnecessarily large given the actual amount of data transmitted and connection time attributed to the user.
The connections may be insecure because transmitters and receivers are necessarily non-discriminatory at the connection level. A wired network gains some security by limiting access to the connection medium, but wireless systems are unable to be secured in a similar fashion. As a further complication, transmissions are necessarily broadcast and may be received by unauthorized receivers that can lead to a compromise of access information.
There are many ways to develop database applications. One common and efficient way on Win32 platforms is to use ActiveX Data Controls with a GUI builder like Visual C++ or Visual Basic. Applications built this way sometimes don't require a single line of coding. IBM DB2 Everyplace also has a GUI builder “Mobile Application Builder” (MAB) that allows rapid application development for wireless platforms, e.g. the Palm platform.
This model has a major drawback in the Client/Sever environment. For each client to connect to a remote Database Server like IBM Universal DB (UDB), the client needs to supply a UserID/password with an ODBC/CLI SQLConnect( ) function. The same UserID/password also needs to be created on the server machine. This exposes a potential security problem by permitting users to have authentication information that directly logons to the Database Server or the underlying operating system, particularly because most systems do not permit the encryption of this UserID/password credential.
A consequence is that many industrial strength Client/Server applications have to avoid using these rapid Database Access GUI builders. Application builders move their database access code to a mid-tier server. Their GUI clients pass their proprietary authentication information to the mid-tier server. The mid-tier server then uses the Database Server UserID/password to access the data. IBM Content Management System Administration tool is one of the examples.
Additionally, an industrial strength Database Server like UDB offers authorizations at instance-level, database-level, and table/view level. Currently one feature not fully implemented is providing authorization at the stored procedure level.
As seen above, the wireless connection model can lead to complicated connections in that configuration files typically must be established on both the PDA and on the system hosting the shared remote resource. Coordinating the files with proper, current and complete authorization information can be difficult, particularly when the remote shared resource is administered by a different entity than that responsible for administering the PDA.
Accordingly, what is needed is a system and method for simply and efficiently accessing a shared remote resource from a PDA using a wireless connection that improves reliability and security while reducing cost and complexity. The present invention addresses such a need.